四、解決進行資料庫版控會遇到的問題
Day 10 : 多個系統使用的同一個資料庫時要如何做版本變更
Day 11 : 多系統不共享資料庫會造成的問題
Day 12: 使用 API First 的概念解決共享問題
-> Day 13 : 資料庫如何退回之前的版本
Day 14 : 如何處理資料表中被刪除或更名的欄位
Day 15 : 資料表降級時如何處理資料庫中被刪除的欄位
我們今天來聊聊資料庫如何退回之前的版本,當我們在升級 prod 環境時,雖然不希望有問題,但難免還是會遇到退回 AP 版本的情況,這時資料庫會不會需要退回版本呢?
基本上建議不要到這一步,DB 由於是有狀態的,所以退回版本的成本比將 AP 端退回版本要高出太多了,基本上就算要移除某一個欄位,也建議先讓 AP 端先不使用此欄位,在未來的版本再慢慢移除
若我們的業務環境真的需要做還原資料庫 Schema,可以使用之前介紹過的 Flyway 與 Liquibase,都有提供產生還原語法的功能,也可以使用 ORM 工具的 Migration 退回到之前版本,但這要確保異動時被刪除的資料是不需要的,不然將會喪失這一段時間所存入的資料
這是 解決進行資料庫版控會遇到的問題 的第四天,明日將會聊聊如何處理資料表中被刪除或更名的欄位